package ar.edu.utn.frsf.proyectofinal.sistemadecontrolmodbus.service;

import java.util.List;

import ar.edu.utn.frsf.proyectofinal.sistemadecontrolmodbus.persistence.model.Device;
import ar.edu.utn.frsf.proyectofinal.sistemadecontrolmodbus.persistence.model.DeviceType;
import ar.edu.utn.frsf.proyectofinal.sistemadecontrolmodbus.persistence.model.SimpleUser;

public interface SystemService {
	
	public UserDataService logIn(String user,String pass);

	public List<DeviceService> getDeviceServices(List<Device> userdevices);
	
	public DeviceChangeListenerFactory getDeviceChangeListenerFactory();

	public void setDeviceChangeListenerFactory(DeviceChangeListenerFactory devchangefact);
	
	public void activate();
	
	public void deactivate();
	
	public boolean isActive();
	
	public List<DeviceType> getSysDeviceTypes();
	
	public void saveType(DeviceType type);
	
	public void deleteDeviceType(DeviceType type);
	
	public List<Device> getSysDevices();
	
	public void saveDevice(Device device);
	
	public void deleteDevice(Device device);
	
	public List<SimpleUser> getSysUsers();
	
	public void saveUser(SimpleUser user);
	
	public void deleteUser(SimpleUser user);
	
}
